home *** CD-ROM | disk | FTP | other *** search
/ Meeting Pearls 2 / Meeting Pearls Vol. II (1995)(GTI - Schatztruhe)[!].iso / Pearls / dev / GUI / BGUI / include / libraries / bgui.i < prev   
Encoding:
Text File  |  1994-10-06  |  41.9 KB  |  1,178 lines

  1.     IFND        LIBRARIES_BGUI_I
  2. LIBRARIES_BGUI_I        SET     1
  3. **
  4. **      $VER: libraries/bgui.i 37.35 (04.10.94)
  5. **      ASM header for the bgui.library.
  6. **
  7. **      bgui.library structures and constants.
  8. **
  9. **      (C) Copyright 1993-1994 Jaba Development.
  10. **      (C) Copyright 1993-1994 Jan van den Baard.
  11. **      All Rights Reserved.
  12. **
  13.  
  14.         IFND    __m68
  15.  
  16.         IFND    EXEC_TYPES_I
  17.         INCLUDE "exec/types.i"
  18.         ENDC
  19.  
  20.         IFND    INTUITION_CLASSES_I
  21.         INCLUDE "intuition/classes.i"
  22.         ENDC
  23.  
  24.         IFND    INTUITION_CLASSUSR_I
  25.         INCLUDE "intuition/classusr.i"
  26.         ENDC
  27.  
  28.         IFND    INTUITION_IMAGECLASS_I
  29.         INCLUDE "intuition/imageclass.i"
  30.         ENDC
  31.  
  32.         IFND    INTUITION_GADGETCLASS_I
  33.         INCLUDE "intuition/gadgetclass.i"
  34.         ENDC
  35.  
  36.         IFND    INTUITION_CGHOOKS_I
  37.         INCLUDE "intuition/cghooks.i"
  38.         ENDC
  39.  
  40.         IFND    LIBRARIES_COMMODITIES_I
  41.         INCLUDE "libraries/commodities.i"
  42.         ENDC
  43.  
  44.         IFND    LIBRARIES_GADTOOLS_I
  45.         INCLUDE "libraries/gadtools.i"
  46.         ENDC
  47.  
  48.         IFND UTILITY_TAGITEM_I
  49.         INCLUDE "utility/tagitem.i"
  50.         ENDC
  51.  
  52.         ENDC    * _m68
  53.  
  54. *****************************************************************************
  55. **
  56. **      The attribute definitions in this header are all followed by
  57. **      a small comment. This comment can contain the following things:
  58. **
  59. **      I        - Attribute can be set with OM_NEW
  60. **      S        - Attribute can be set with OM_SET
  61. **      G        - Attribute can be read with OM_GET
  62. **      N        - Setting this attribute triggers a notification.
  63. **      U        - Attribute can be set with OM_UPDATE.
  64. **      PRIVATE! - Like it says: Private. Do not use this attribute.
  65. **
  66.  
  67. *****************************************************************************
  68. **
  69. **      Miscellanious library definitions.
  70. **
  71. BGUINAME        MACRO
  72.                 DC.B    'bgui.library',0
  73.                 ENDM
  74.  
  75. BGUIVERSION     EQU     37
  76.  
  77. * Added to avoid problems with multiple defines.
  78.  
  79.    STRUCTURE    bguiMethodID,0
  80.         ULONG   bmi_MethodID
  81.         LABEL   MethodID_SIZEOF
  82.  
  83. ******************************************************************************
  84. **
  85. **      BGUI_GetClassPtr() and BGUI_NewObjectA() class ID's.
  86. **
  87. BGUI_LABEL_IMAGE        EQU     0
  88. BGUI_FRAME_IMAGE        EQU     1
  89. BGUI_VECTOR_IMAGE       EQU     2
  90. ** 3 until 10 reserved. **
  91. BGUI_BASE_GADGET        EQU     11
  92. BGUI_GROUP_GADGET       EQU     12
  93. BGUI_BUTTON_GADGET      EQU     13
  94. BGUI_CYCLE_GADGET       EQU     14
  95. BGUI_CHECKBOX_GADGET    EQU     15
  96. BGUI_INFO_GADGET        EQU     16
  97. BGUI_STRING_GADGET      EQU     17
  98. BGUI_PROP_GADGET        EQU     18
  99. BGUI_INDICATOR_GADGET   EQU     19
  100. ** 20 is reserved. **
  101. BGUI_PROGRESS_GADGET    EQU     21
  102. BGUI_SLIDER_GADGET      EQU     22
  103. BGUI_LISTVIEW_GADGET    EQU     23
  104. BGUI_MX_GADGET          EQU     24
  105. BGUI_PAGE_GADGET        EQU     25
  106. BGUI_EXTERNAL_GADGET    EQU     26
  107. BGUI_SEPERATOR_GADGET   EQU     27
  108. ** 28 until 39 reserved. **
  109. BGUI_WINDOW_OBJECT      EQU     40
  110. BGUI_FILEREQ_OBJECT     EQU     41
  111. BGUI_COMMODITY_OBJECT   EQU     42
  112.  
  113. ******************************************************************************
  114. **
  115. **      BGUI requester definitions.
  116. **
  117.    STRUCTURE    bguiRequest,0
  118.         ULONG   br_Flags        ; See below.
  119.         APTR    br_Title        ; Requester title.
  120.         APTR    br_GadgetFormat ; Gadget labels.
  121.         APTR    br_TextFormat   ; Body text format.
  122.         UWORD   br_ReqPos       ; Requester position.
  123.         APTR    br_TextAttr     ; Requester font.
  124.         STRUCT  br_Reserved,6*4 ; Set to NULL!
  125.    LABEL bguiRequest_SIZEOF
  126.  
  127. BREQF_CENTERWINDOW      EQU     $0001   ; Center requester on the window.
  128. BREQF_LOCKWINDOW        EQU     $0002   ; Lock the parent window.
  129. BREQF_NO_PATTERN        EQU     $0004   ; Don't use back-fill pattern.
  130. BREQF_XEN_BUTTONS       EQU     $0008   ; Use XEN style buttons.
  131.  
  132. ******************************************************************************
  133. **
  134. **      Tag and method bases.
  135. **
  136. BGUI_TB         EQU     TAG_USER+$000F0000
  137. BGUI_MB         EQU     $000F0000
  138.  
  139. ******************************************************************************
  140. **
  141. **      "frameclass" - BOOPSI framing image.
  142. **
  143. FRM_Type                EQU     BGUI_TB+1       ; ISG--
  144. FRM_CustomHook          EQU     BGUI_TB+2       ; ISG--
  145. FRM_BackFillHook        EQU     BGUI_TB+3       ; ISG--
  146. FRM_Title               EQU     BGUI_TB+4       ; ISG--
  147. FRM_TextAttr            EQU     BGUI_TB+5       ; ISG--
  148. FRM_Flags               EQU     BGUI_TB+6       ; ISG--
  149. FRM_FrameWidth          EQU     BGUI_TB+7       ; --G--
  150. FRM_FrameHeight         EQU     BGUI_TB+8       ; --G--
  151. FRM_BackFill            EQU     BGUI_TB+9       ; ISG--
  152. FRM_EdgesOnly           EQU     BGUI_TB+10      ; ISG--
  153. FRM_Recessed            EQU     BGUI_TB+11      ; ISG--
  154. FRM_CenterTitle         EQU     BGUI_TB+12      ; ISG--
  155. FRM_HighlightTitle      EQU     BGUI_TB+13      ; ISG--
  156. FRM_ThinFrame           EQU     BGUI_TB+14      ; ISG--
  157.  
  158. ** BGUI_TB+15 until BGUI_TB+80 reserved
  159.  
  160. ** Back fill types **
  161. STANDARD_FILL           EQU     0
  162. SHINE_RASTER            EQU     1
  163. SHADOW_RASTER           EQU     2
  164. SHINE_SHADOW_RASTER     EQU     3
  165. FILL_RASTER             EQU     4
  166. SHINE_FILL_RASTER       EQU     5
  167. SHADOW_FILL_RASTER      EQU     6
  168. SHINE_BLOCK             EQU     7
  169. SHADOW_BLOCK            EQU     8
  170.  
  171. ** Flags **
  172. FRF_EDGES_ONLY          EQU     $0001
  173. FRF_RECESSED            EQU     $0002
  174. FRF_CENTER_TITLE        EQU     $0004
  175. FRF_HIGHLIGHT_TITLE     EQU     $0008
  176. FRF_THIN_FRAME          EQU     $0010
  177.  
  178. ** Frame types **
  179. FRTYPE_CUSTOM           EQU     0
  180. FRTYPE_BUTTON           EQU     1
  181. FRTYPE_RIDGE            EQU     2
  182. FRTYPE_DROPBOX          EQU     3
  183. FRTYPE_NEXT             EQU     4
  184. FRTYPE_RADIOBUTTON      EQU     5
  185. FRTYPE_XEN_BUTTON       EQU     6
  186.  
  187. **
  188. **      FRM_RENDER:
  189. **
  190. **      The message packet sent to both the FRM_CustomHook
  191. **      and FRM_BackFillHook routines. Note that this
  192. **      structure is READ-ONLY!
  193. **
  194. **      The hook is called as follows:
  195. **
  196. **              lea     hook,a0         * 'STRUCTURE Hook' pointer
  197. **              lea     image_object,a2 * Object pointer
  198. **              lea     fdraw,a1        * FrameDrawMsg pointer
  199. **              jsr     hookFunc        * Call hook function
  200. **              tst.l   d0              * return code in D0
  201. **
  202. FRM_RENDER      EQU     1       ; Render yourself
  203.  
  204.    STRUCTURE    FrameDrawMsg,0
  205.         ULONG   fdm_MethodID    ; FRM_RENDER
  206.         APTR    fdm_RPort       ; RastPort ready for rendering
  207.         APTR    fdm_DrawInfo    ; All you need to render
  208.         APTR    fdm_Bounds      ; Rendering bounds.
  209.         UWORD   fdm_State       ; See "intuition/imageclass.h"
  210.    LABEL FrameDrawMsg_SIZEOF
  211.  
  212. **
  213. **      FRM_THICKNESS:
  214. **
  215. **      The message packet sent to the FRM_Custom hook.
  216. **      This structure is READ-ONLY!
  217. **
  218. **      The hook is called as follows:
  219. **
  220. **              lea     hook,a0         * 'STRUCTURE Hook' pointer
  221. **              lea     image_object,a2 * Object pointer
  222. **              lea     thick,a1        * ThicknessMsg pointer
  223. **              jsr     hookFunc        * Call hook function
  224. **              tst.l   d0              * return code in D0
  225. **
  226. FRM_THICKNESS   EQU     2       ; Give the frame thickness.
  227.  
  228.    STRUCTURE    ThicknessMsg,0
  229.         ULONG   tm_MethodID             ; FRM_THICKNESS
  230.         UBYTE   tm_ThicknessHorizontal  ; Storage for horizontal
  231.         UBYTE   tm_ThicknessVertical    ; Storage for vertical
  232.    LABEL        ThicknessMsg_SIZEOF
  233.  
  234. ** Possible hook return codes. **
  235. FRC_OK          EQU     0       ; OK
  236. FRC_UNKNOWN     EQU     1       ; Unknow method
  237.  
  238. ******************************************************************************
  239. **
  240. **      "labelclass" - BOOPSI labeling image.
  241. **
  242. LAB_TextAttr    EQU     BGUI_TB+81      ; ISG--
  243. LAB_Style       EQU     BGUI_TB+82      ; ISG--
  244. LAB_Underscore  EQU     BGUI_TB+83      ; ISG--
  245. LAB_Place       EQU     BGUI_TB+84      ; ISG--
  246. LAB_Label       EQU     BGUI_TB+85      ; ISG--
  247. LAB_Flags       EQU     BGUI_TB+86      ; ISG--
  248. LAB_Highlight   EQU     BGUI_TB+87      ; ISG--
  249. LAB_HighUScore  EQU     BGUI_TB+88      ; ISG--
  250.  
  251. ** BGUI_TB+89 until BGUI_TB+160 reserved
  252.  
  253. ** Flags **
  254. LABF_HIGHLIGHT          EQU     $0001   ; Highlight label
  255. LABF_HIGH_USCORE        EQU     $0002   ; Highlight underscoring
  256.  
  257. ** Label placement **
  258. PLACE_IN        EQU     0
  259. PLACE_LEFT      EQU     1
  260. PLACE_RIGHT     EQU     2
  261. PLACE_ABOVE     EQU     3
  262. PLACE_BELOW     EQU     4
  263.  
  264. ** New methods **
  265. **
  266. **      The IM_EXTENT method is used to find out how many
  267. **      pixels the label extents the relative hitbox in
  268. **      either direction. Normally this method is called
  269. **      by the baseclass.
  270. **
  271. IM_EXTENT       EQU     BGUI_MB+1
  272.  
  273.    STRUCTURE    impExtent,MethodID_SIZEOF  ; IM_EXTENT
  274.         APTR    impex_RPort             ; RastPort
  275.         APTR    impex_Extent            ; Storage for extentions.
  276.         UWORD   impex_LabelSizeWidth    ; Storage width in pixels
  277.         UWORD   impex_LabelSizeHeight   ; Storage height in pixels
  278.         UWORD   impex_Flags             ; See below.
  279.    LABEL        impExtent_SIZEOF
  280.  
  281. EXTF_MAXIMUM    EQU     $0001   ; Request maximum extensions.
  282.  
  283. ** BGUI_MB+2 until BGUI_MB+40 reserved
  284.  
  285. ******************************************************************************
  286. **
  287. **      "vectorclass" - BOOPSI scalable vector image.
  288. **
  289. **      Based on an idea found in the ObjectiveGadTools.library
  290. **      by Davide Massarenti.
  291. **
  292. VIT_VectorArray EQU     BGUI_TB+161     ; ISG--
  293. VIT_BuiltIn     EQU     BGUI_TB+162     ; ISG--
  294. VIT_Pen         EQU     BGUI_TB+163     ; ISG--
  295. VIT_DriPen      EQU     BGUI_TB+164     ; ISG--
  296.  
  297. ** BGUI_TB+165 until BGUI_TB+240 reserved.
  298.  
  299. **
  300. **      Command structure which can contain
  301. **      coordinates, data and command flags.
  302. **
  303.    STRUCTURE    VectorItem,0
  304.         WORD    vi_x            ; X coordinate or data
  305.         WORD    vi_y            ; Y coordinate
  306.         ULONG   vi_Flags        ; See below
  307.    LABEL        VectorItem_SIZEOF
  308.  
  309. ** Flags **
  310. VIF_MOVE        EQU     $00000001       ; Move to vc_x, vc_y
  311. VIF_DRAW        EQU     $00000002       ; Draw to vc_x, vc_y
  312. VIF_AREASTART   EQU     $00000004       ; Start AreaFill at vc_x, vc_y
  313. VIF_AREAEND     EQU     $00000008       ; End AreaFill at vc_x, vc_y
  314. VIF_XRELRIGHT   EQU     $00000010       ; vc_x relative to right edge
  315. VIF_YRELBOTTOM  EQU     $00000020       ; vc_y relative to bottom edge
  316. VIF_SHADOWPEN   EQU     $00000040       ; switch to SHADOWPEN, Move/Draw
  317. VIF_SHINEPEN    EQU     $00000080       ; switch to SHINEPEN, Move/Draw
  318. VIF_FILLPEN     EQU     $00000100       ; switch to FILLPEN, Move/Draw
  319. VIF_TEXTPEN     EQU     $00000200       ; switch to TEXTPEN, Move/Draw
  320. VIF_COLOR       EQU     $00000400       ; switch to color in vc_x
  321. VIF_LASTITEM    EQU     $00000800       ; last element of the element list
  322. VIF_SCALE       EQU     $00001000       ; X & Y are design width & height
  323. VIF_DRIPEN      EQU     $00002000       ; switch to dripen vc_x
  324. VIF_AOLPEN      EQU     $00004000       ; set area outline pen vc_x
  325. VIF_AOLDRIPEN   EQU     $00008000       ; set area outline dripen vc_x
  326. VIF_ENDOPEN     EQU     $00010000       ; end area outline pen
  327.  
  328. ** Built-in images. **
  329. BUILTIN_GETPATH         EQU     1
  330. BUILTIN_GETFILE         EQU     2
  331. BUILTIN_CHECKMARK       EQU     3
  332. BUILTIN_POPUP           EQU     4
  333. BUILTIN_ARROW_UP        EQU     5
  334. BUILTIN_ARROW_DOWN      EQU     6
  335. BUILTIN_ARROW_LEFT      EQU     7
  336. BUILTIN_ARROW_RIGHT     EQU     8
  337.  
  338. ** Design width and heights of the built-in images. **
  339. GETPATH_WIDTH           EQU     20
  340. GETPATH_HEIGHT          EQU     14
  341. GETFILE_WIDTH           EQU     20
  342. GETFILE_HEIGHT          EQU     14
  343. CHECKMARK_WIDTH         EQU     26
  344. CHECKMARK_HEIGHT        EQU     11
  345. POPUP_WIDTH             EQU     15
  346. POPUP_HEIGHT            EQU     13
  347. ARROW_UP_WIDTH          EQU     16
  348. ARROW_UP_HEIGHT         EQU     9
  349. ARROW_DOWN_WIDTH        EQU     16
  350. ARROW_DOWN_HEIGHT       EQU     9
  351. ARROW_LEFT_WIDTH        EQU     10
  352. ARROW_LEFT_HEIGHT       EQU     12
  353. ARROW_RIGHT_WIDTH       EQU     10
  354. ARROW_RIGHT_HEIGHT      EQU     12
  355.  
  356. ******************************************************************************
  357. **
  358. **      "baseclass" - BOOPSI base gadget.
  359. **
  360. **      This is a very important BGUI gadget class. All other gadget classes
  361. **      are sub-classed from this class. It will handle stuff like online
  362. **      help, notification, labels and frames etc. If you want to write a
  363. **      gadget class for BGUI be sure to subclass it from this class. That
  364. **      way your class will automatically inherit the same features.
  365. **
  366. BT_HelpFile     EQU     BGUI_TB+241     ; IS---
  367. BT_HelpNode     EQU     BGUI_TB+242     ; IS---
  368. BT_HelpLine     EQU     BGUI_TB+243     ; IS---
  369. BT_Inhibit      EQU     BGUI_TB+244     ; PRIVATE!
  370. BT_HitBox       EQU     BGUI_TB+245     ; --G--
  371. BT_LabelObject  EQU     BGUI_TB+246     ; -SG--
  372. BT_FrameObject  EQU     BGUI_TB+247     ; -SG--
  373. BT_TextAttr     EQU     BGUI_TB+248     ; -S---
  374. BT_NoRecessed   EQU     BGUI_TB+249     ; -S---
  375. BT_LabelClick   EQU     BGUI_TB+250     ; IS---
  376. BT_HelpText     EQU     BGUI_TB+251     ; IS---
  377.  
  378. ** BGUI_TB+252 until BGUI_TB+320 reserved.
  379.  
  380. ** New methods **
  381. BASE_ADDMAP     EQU     BGUI_MB+41
  382.  
  383. ** Add an object to the maplist notification list. **
  384.    STRUCTURE    bmAddMap,MethodID_SIZEOF
  385.         APTR    bam_Object
  386.         APTR    bam_MapList
  387.    LABEL        bmAddMap_SIZEOF
  388.  
  389. BASE_ADDCONDITIONAL     EQU     BGUI_MB+42
  390.  
  391. ** Add an object to the conditional notification list. **
  392.    STRUCTURE    bmAddConditional,MethodID_SIZEOF
  393.         APTR    bac_Object
  394.         STRUCT  bac_Condition,ti_SIZEOF
  395.         STRUCT  bac_TRUE,ti_SIZEOF
  396.         STRUCT  bac_FALSE,ti_SIZEOF
  397.    LABEL        bmAddConditional_SIZEOF
  398.  
  399. BASE_ADDMETHOD  EQU     BGUI_MB+43
  400.  
  401. ** Add an object to the method notification list. **
  402.    STRUCTURE    bmAddMethod,MethodID_SIZEOF
  403.         APTR    bamtd_Object
  404.         ULONG   bamtd_Flags
  405.         ULONG   bamtd_Size
  406.         ULONG   bamtd_MethodID
  407.    LABEL        bmAddMethod_SIZEOF
  408.  
  409. BAMF_NO_GINFO           EQU     $0001   ; Do not send GadgetInfo.
  410. BAMF_NO_INTERIM         EQU     $0002   ; Skip interim messages.
  411.  
  412. BASE_REMMAP             EQU     BGUI_MB+44
  413. BASE_REMCONDITIONAL     EQU     BGUI_MB+45
  414. BASE_REMMETHOD          EQU     BGUI_MB+46
  415.  
  416. ** Remove an object from a notification list. **
  417.    STRUCTURE    bmRemove,MethodID_SIZEOF
  418.         APTR    bar_Object
  419.    LABEL        bmRemove_SIZEOF
  420.  
  421. BASE_SHOWHELP           EQU     BGUI_MB+47
  422.  
  423. ** Show attached online-help. **
  424.    STRUCTURE    bmShowHelp,MethodID_SIZEOF
  425.         APTR    bsh_Window
  426.         APTR    bsh_Requester
  427.         WORD    bsh_MouseX
  428.         WORD    bsh_MouseY
  429.    LABEL        bmShowHelp_SIZEOF
  430.  
  431. BMHELP_OK       EQU     0       ; OK, no problems.
  432. BMHELP_NOT_ME   EQU     1       ; Mouse not over the object.
  433. BMHELP_FAILURE  EQU     2       ; Showing failed.
  434.  
  435. **
  436. **      The following three methods are used internally to
  437. **      perform infinite-loop checking. Do not use them.
  438. **
  439. BASE_SETLOOP    EQU     BGUI_MB+48
  440. BASE_CLEARLOOP  EQU     BGUI_MB+49
  441. BASE_CHECKLOOP  EQU     BGUI_MB+50
  442.  
  443. ** PRIVATE! Hands off! **
  444. BASE_LEFTEXT    EQU     BGUI_MB+51
  445.  
  446.    STRUCTURE    bmLeftExt,MethodID_SIZEOF
  447.         APTR    bmle_RPort
  448.         UWORD   bmle_Extention
  449.    LABEL        bmLeftExt_SIZEOF
  450.  
  451. BASE_ADDHOOK    EQU     BGUI_MB+52
  452.  
  453. ** Add a hook to the hook-notification list. **
  454.    STRUCTURE    bmAddHook,MethodID_SIZEOF
  455.         APTR    bah_Hook
  456.    LABEL        bahAddHook_SIZEOF
  457.  
  458. ** Remove a hook from the hook-notification list.
  459. BASE_REMHOOK    EQU     BGUI_MB+53
  460.  
  461. ** BGUI_MB+54 until BGUI_MB+80 reserved.
  462.  
  463. ******************************************************************************
  464. **
  465. **      "groupclass" - BOOPSI group gadget.
  466. **
  467. **      This class is the actual bgui.library layout engine. It will layout
  468. **      all members in a specific area. Two group types are available,
  469. **      horizontal and vertical groups.
  470. **
  471. GROUP_Style             EQU     BGUI_TB+321     ; I----
  472. GROUP_Spacing           EQU     BGUI_TB+322     ; I----
  473. GROUP_HorizOffset       EQU     BGUI_TB+323     ; I----
  474. GROUP_VertOffset        EQU     BGUI_TB+324     ; I----
  475. GROUP_LeftOffset        EQU     BGUI_TB+325     ; I----
  476. GROUP_TopOffset         EQU     BGUI_TB+326     ; I----
  477. GROUP_RightOffset       EQU     BGUI_TB+327     ; I----
  478. GROUP_BottomOffset      EQU     BGUI_TB+328     ; I----
  479. GROUP_Member            EQU     BGUI_TB+329     ; I----
  480. GROUP_SpaceObject       EQU     BGUI_TB+330     ; I----
  481. GROUP_BackFill          EQU     BGUI_TB+331     ; I----
  482. GROUP_EqualWidth        EQU     BGUI_TB+332     ; I----
  483. GROUP_EqualHeight       EQU     BGUI_TB+333     ; I----
  484.  
  485. ** BGUI_TB+334 until BGUI_TB+380 reserved.
  486.  
  487. ** Object layout attributes. **
  488. LGO_FixWidth            EQU     BGUI_TB+381
  489. LGO_FixHeight           EQU     BGUI_TB+382
  490. LGO_Weight              EQU     BGUI_TB+383
  491. LGO_FixMinWidth         EQU     BGUI_TB+384
  492. LGO_FixMinHeight        EQU     BGUI_TB+385
  493. LGO_Align               EQU     BGUI_TB+386
  494.  
  495. ** BGUI_TB+387 until BGUI_TB+400 reserved.
  496.  
  497. ** Default object weight. **
  498. DEFAULT_WEIGHT  EQU     50
  499.  
  500. ** Group styles. **
  501. GRSTYLE_HORIZONTAL      EQU     0
  502. GRSTYLE_VERTICAL        EQU     1
  503.  
  504. ** New methods. **
  505. GRM_ADDMEMBER   EQU     BGUI_MB+81
  506.  
  507. ** Add a member to the group. **
  508.    STRUCTURE    grmAddMember,MethodID_SIZEOF       ; GRM_ADDMEMBER
  509.         APTR    grma_Member                     ; Object to add.
  510.         ULONG   grma_Attr                       ; First of LGO attributes.
  511.    LABEL        grmAddMember_SIZEOF
  512.  
  513. GRM_REMMEMBER   EQU     BGUI_MB+82
  514.  
  515. ** Remove a member from the group. **
  516.    STRUCTURE    grmRemMember,MethodID_SIZEOF       ; GRM_REMMEMBER
  517.         APTR    grmr_Member                     ; Object to remove.
  518.    LABEL        grmRemMember_SIZEOF
  519.  
  520. GRM_DIMENSIONS  EQU     BGUI_MB+83
  521.  
  522. ** Ask an object it's dimensions information. **
  523.    STRUCTURE    grmDimensions,MethodID_SIZEOF      ; GRM_DIMENSIONS
  524.         APTR    grmd_GInfo                      ; Can be NULL!
  525.         APTR    grmd_RPort                      ; Ready for calculations.
  526.         APTR    grmd_MinSizeWidth               ; Storage for dimensions.
  527.         APTR    grmd_MinSizeHeight              ; -
  528.         ULONG   grmd_Flags                      ; See below.
  529.    LABEL        grmDimensions_SIZEOF
  530.  
  531. ** Flags **
  532. GDIMF_NO_FRAME          EQU     $0001   ; Don't take frame width/height
  533.                                         ; into consideration.
  534.  
  535. GRM_ADDSPACEMEMBER      EQU     BGUI_MB+84
  536.  
  537. ** Add a weight controlled spacing member. **
  538.    STRUCTURE    grmAddSpaceMember,MethodID_SIZEOF  ; GRM_ADDSPACEMEMBER
  539.         ULONG   grms_Weight                     ; Object weight.
  540.    LABEL        grmAddSpaceMember_SIZEOF
  541.  
  542. GRM_INSERTMEMBER        EQU     BGUI_MB+85
  543.  
  544.    STRUCTURE    grmInsertMember,MethodID_SIZEOF    ; GRM_INSERTMEMBER
  545.         APTR    grmi_Member                     ; Object to insert
  546.         APTR    grmi_Pred                       ; Insert after this member
  547.         ULONG   grmi_Attr                       ; First of LGO attributes
  548.    LABEL        grmiInsertMember_SIZEOF
  549.  
  550. ** BGUI_MB+86 until BGUI_MB+120 reserved.
  551.  
  552. ******************************************************************************
  553. **
  554. **      "buttonclass" - BOOPSI button gadget.
  555. **
  556. **      GadTools style button gadget.
  557. **
  558. **      GA_Selected has been made gettable (OM_GET) for toggle-select
  559. **      buttons. (ISGNU)
  560. **
  561. BUTTON_ScaleMinWidth    EQU     BGUI_TB+401     ; PRIVATE!
  562. BUTTON_ScaleMinHeight   EQU     BGUI_TB+402     ; PRIVATE!
  563.  
  564. ** BGUI_TB+403 until BGUI_TB+480 reserved.
  565. ** BGUI_MB+121 until BGUI_MB+160 reserved.
  566.  
  567. ******************************************************************************
  568. **
  569. **      "checkboxclass" - BOOPSI checkbox gadget.
  570. **
  571. **      GadTools style checkbox gadget.
  572. **
  573. **      GA_Selected has been made gettable (OM_GET). (ISGNU)
  574. **
  575.  
  576. ** BGUI_TB+481 until BGUI_TB+560 reserved.
  577. ** BGUI_MB+161 until BGUI_MB+200 reserved.
  578.  
  579. ******************************************************************************
  580. **
  581. **      "cycleclass" - BOOPSI cycle gadget.
  582. **
  583. **      GadTools style cycle gadget.
  584. **
  585. CYC_Labels      EQU     BGUI_TB+561     ; I----
  586. CYC_Active      EQU     BGUI_TB+562     ; ISGNU
  587. CYC_Popup       EQU     BGUI_TB+563     ; I----
  588.  
  589. ** BGUI_TB+564 until BGUI_TB+640 reserved.
  590. ** BGUI_MB+201 until BGUI_MB+240 reserved.
  591.  
  592. ******************************************************************************
  593. **
  594. **      "infoclass" - BOOPSI information gadget.
  595. **
  596. **      Text gadget which supports different colors, text styles and
  597. **      text positioning.
  598. **
  599. INFO_TextFormat         EQU     BGUI_TB+641     ; IS--U
  600. INFO_Args               EQU     BGUI_TB+642     ; IS--U
  601. INFO_MinLines           EQU     BGUI_TB+643     ; I----
  602. INFO_FixTextWidth       EQU     BGUI_TB+644     ; I----
  603. INFO_HorizOffset        EQU     BGUI_TB+645     ; I----
  604. INFO_VertOffset         EQU     BGUI_TB+646     ; I----
  605.  
  606. ** Command sequences. **
  607. ISEQ_B  MACRO           ; Bold
  608.         dc.b    27,"b"
  609.         ENDM
  610. ISEQ_I  MACRO           ; Italics
  611.         dc.b    27,"i"
  612.         ENDM
  613. ISEQ_U  MACRO           ; Underlined
  614.         dc.b    27,"u"
  615.         ENDM
  616. ISEQ_N  MACRO           ; Normal
  617.         dc.b    27,"n"
  618.         ENDM
  619. ISEQ_C  MACRO           ; Centered
  620.         dc.b    27,"c"
  621.         ENDM
  622. ISEQ_R  MACRO           ; Right
  623.         dc.b    27,"r"
  624.         ENDM
  625. ISEQ_L  MACRO           ; Left
  626.         dc.b    27,"l"
  627.         ENDM
  628. ISEQ_TEXT       MACRO           ; TEXTPEN
  629.         dc.b    27,"d2"
  630.         ENDM
  631. ISEQ_SHINE      MACRO           ; SHINEPEN
  632.         dc.b    27,"d3"
  633.         ENDM
  634. ISEQ_SHADOW     MACRO           ; SHADOWPEN
  635.         dc.b    27,"d4"
  636.         ENDM
  637. ISEQ_FILL       MACRO           ; FILLPEN
  638.         dc.b    27,"d5"
  639.         ENDM
  640. ISEQ_FILLTEXT   MACRO           ; FILLTEXTPEN
  641.         dc.b    27,"d6"
  642.         ENDM
  643. ISEQ_HIGHLIGHT  MACRO           ; HIGHLIGHTPEN
  644.         dc.b    27,"d8"
  645.         ENDM
  646.  
  647. ** BGUI_TB+645 until BGUI_TB+720 reserved.
  648. ** BGUI_MB+241 until BGUI_MB+280 reserved.
  649.  
  650. ******************************************************************************
  651. **
  652. **      "listviewclass" - BOOPSI listview gadget.
  653. **
  654. **      GadTools style listview gadget.
  655. **
  656. LISTV_ResourceHook      EQU     BGUI_TB+721     ; I----
  657. LISTV_DisplayHook       EQU     BGUI_TB+722     ; I----
  658. LISTV_CompareHook       EQU     BGUI_TB+723     ; I----
  659. LISTV_Top               EQU     BGUI_TB+724     ; IS--U
  660. LISTV_ListFont          EQU     BGUI_TB+725     ; I-G--
  661. LISTV_ReadOnly          EQU     BGUI_TB+726     ; I----
  662. LISTV_MultiSelect       EQU     BGUI_TB+727     ; I----
  663. LISTV_EntryArray        EQU     BGUI_TB+728     ; I----
  664. LISTV_Select            EQU     BGUI_TB+729     ; -S--U
  665. LISTV_MakeVisible       EQU     BGUI_TB+730     ; -S--U
  666. LISTV_Entry             EQU     BGUI_TB+731     ; ---N-
  667. LISTV_SortEntryArray    EQU     BGUI_TB+732     ; I----
  668. LISTV_EntryNumber       EQU     BGUI_TB+733     ; ---N-
  669. LISTV_TitleHook         EQU     BGUI_TB+734     ; I----
  670. LISTV_LastClicked       EQU     BGUI_TB+735     ; --G--
  671. LISTV_ThinFrames        EQU     BGUI_TB+736     ; I----
  672.  
  673. ** BGUI_TB+737 until BGUI_TB+800 reserved.
  674.  
  675. **
  676. **      The LISTV_ResourceHook is called as follows:
  677. **
  678. **              lea     hook,a0                 * 'STRUCTURE Hook' pointer
  679. **              lea     lv_object,a2            * Object pointer
  680. **              lea     lvResource,a1           * lvResource pointer
  681. **              jsr     hookFunc                * Call hook function
  682. **              tst.l   d0                      * return code in D0
  683. **
  684.    STRUCTURE    lvResource,0
  685.         UWORD   lvr_Command
  686.         APTR    lvr_Entry
  687.    LABEL        lvResource_SIZEOF
  688.  
  689. ** LISTV_ResourceHook commands. **
  690. LVRC_MAKE       EQU     1       ; Built the entry.
  691. LVRC_KILL       EQU     2       ; Kill the entry.
  692.  
  693. **
  694. **      The LISTV_DisplayHook and the LISTV_TitleHook are called as follows:
  695. **
  696. **              lea     hook,a0                 * 'STRUCTURE Hook' pointer
  697. **              lea     lv_object,a2            * Object pointer
  698. **              lea     lvRender,a1             * lvRender pointer
  699. **              jsr     hookFunc                * Call hook function
  700. **              tst.l   d0                      * return code in D0
  701. **
  702.    STRUCTURE    lvRender,0
  703.         APTR    lvren_RPort             ; RastPort to render in.
  704.         APTR    lvren_DrawInfo          ; All you need to render.
  705.         STRUCT  lvren_Bounds,ra_SIZEOF  ; Bounds to render in.
  706.         APTR    lvren_Entry             ; Entry to render.
  707.         UWORD   lvren_State             ; See below.
  708.         UWORD   lvren_Flags             ; None defined yet.
  709.    LABEL        lvRender_SIZEOF
  710.  
  711. ** Rendering states. **
  712. LVRS_NORMAL             EQU     0
  713. LVRS_SELECTED           EQU     1
  714. LVRS_NORMAL_DISABLED    EQU     2
  715. LVRS_SELECTED_DISABLED  EQU     3
  716.  
  717. **
  718. **      The LISTV_CompareHook is called as follows:
  719. **
  720. **              lea     hook,a0                 * 'STRUCTURE Hook' pointer
  721. **              lea     lv_object,a2            * Object pointer
  722. **              lea     lvCompare,a1            * lvCompare pointer
  723. **              jsr     hookFunc                * Call hook function
  724. **              tst.l   d0                      * return code in D0
  725. **
  726.    STRUCTURE    lvCompare,0
  727.         APTR    lvc_EntryA      ; First entry.
  728.         APTR    lvc_EntryB      ; Second entry.
  729.    LABEL        lvCompare_SIZEOF
  730.  
  731. ** New Methods. **
  732. LVM_ADDENTRIES  EQU     BGUI_MB+281
  733.  
  734. ** Add listview entries. **
  735.    STRUCTURE    lvmAddEntries,MethodID_SIZEOF      ; LVM_ADDENTRIES
  736.         APTR    lvma_GInfo                      ; GadgetInfo
  737.         APTR    lvma_Entries                    ; Entries to add.
  738.         ULONG   lvma_How                        ; How to add it.
  739.    LABEL        lvmAddEntries_SIZEOF
  740.  
  741. ** Where to add the entries. **
  742. LVAP_HEAD       EQU     1
  743. LVAP_TAIL       EQU     2
  744. LVAP_SORTED     EQU     3
  745.  
  746. LVM_ADDSINGLE   EQU     BGUI_MB+282
  747.  
  748. ** Add a single entry. **
  749.    STRUCTURE    lvmAddSingle,MethodID_SIZEOF       ; LVM_ADDSINGLE
  750.         APTR    lvms_GInfo                      ; GadgetInfo
  751.         APTR    lvms_Entry                      ; Entry to add.
  752.         ULONG   lvms_How                        ; See above.
  753.         ULONG   lvms_Flags                      ; See below.
  754.    LABEL        lvmAddSingle_SIZEOF
  755.  
  756. ** Flags. **
  757. LVASF_MAKEVISIBLE       EQU     $0001   ; Make entry visible.
  758. LVASF_SELECT            EQU     $0002   ; Select entry.
  759.  
  760. ** Clear the entire list. (Uses a lvmCommand structure as defined below.) **
  761. LVM_CLEAR       EQU     BGUI_MB+283
  762.  
  763. LVM_FIRSTENTRY  EQU     BGUI_MB+284
  764. LVM_LASTENTRY   EQU     BGUI_MB+285
  765. LVM_NEXTENTRY   EQU     BGUI_MB+286
  766. LVM_PREVENTRY   EQU     BGUI_MB+287
  767.  
  768. ** Get an entry. **
  769.    STRUCTURE    lvmGetEntry,MethodID_SIZEOF        ; Any of the above.
  770.         APTR    lvmg_Previous                   ; Previous entry.
  771.         ULONG   lvmg_Flags                      ; See below.
  772.    LABEL        lvmGetEntry_SIZEOF
  773.  
  774. LVGEF_SELECTED  EQU     $0001   ; Get selected entries.
  775.  
  776. LVM_REMENTRY    EQU     BGUI_MB+288
  777.  
  778. ** Remove an entry. **
  779.    STRUCTURE    lvmRemEntry,MethodID_SIZEOF        ; LVM_REMENTRY
  780.         APTR    lvmr_GInfo                      ; GadgetInfo
  781.         APTR    lvmr_Entry                      ; Entry to remove.
  782.    LABEL        lvmRemEntry_SIZEOF
  783.  
  784. LVM_REFRESH     EQU     BGUI_MB+289
  785. LVM_SORT        EQU     BGUI_MB+290
  786. LVM_LOCKLIST    EQU     BGUI_MB+291
  787. LVM_UNLOCKLIST  EQU     BGUI_MB+292
  788.  
  789. ** Refresh/Sort list. **
  790.    STRUCTURE    lvmCommand,MethodID_SIZEOF ; See above
  791.         APTR    lvmc_GInfo              ; GadgetInfo
  792.    LABEL        lvmCommand_SIZEOF
  793.  
  794. ** BGUI_MB+293 until BGUI_MB+320 reserved.
  795.  
  796. ******************************************************************************
  797. **
  798. **      "progressclass" - BOOPSI progression gadget.
  799. **
  800. **      Progression indicator fuel guage.
  801. **
  802. PROGRESS_Min            EQU     BGUI_TB+801     ; IS---
  803. PROGRESS_Max            EQU     BGUI_TB+802     ; IS---
  804. PROGRESS_Done           EQU     BGUI_TB+803     ; ISGNU
  805. PROGRESS_Vertical       EQU     BGUI_TB+804     ; I----
  806. PROGRESS_Divisor        EQU     BGUI_TB+805     ; I----
  807.  
  808. ** BGUI_TB+806 until BGUI_TB+880 reserved.
  809. ** BGUI_MB+321 until BGUI_MB+360 reserved.
  810.  
  811. ******************************************************************************
  812. **
  813. **      "propclass" - BOOPSI proportional gadget.
  814. **
  815. **      GadTools style scroller gadget.
  816. **
  817. PGA_Arrows              EQU     BGUI_TB+881     ; I----
  818. PGA_ArrowSize           EQU     BGUI_TB+882     ; I----
  819. PGA_DontTarget          EQU     BGUI_TB+883     ; PRIVATE!
  820. PGA_ThinFrame           EQU     BGUI_TB+884     ; I----
  821. PGA_XenFrame            EQU     BGUI_TB+885     ; I----
  822.  
  823. ** BGUI_TB+886 until BGUI_TB+960 reserved.
  824. ** BGUI_MB+361 until BGUI_MB+400 reserved.
  825.  
  826. ******************************************************************************
  827. **
  828. **      "stringclass" - BOOPSI string gadget.
  829. **
  830. **      GadTools style string/integer gadget.
  831. **
  832. STRINGA_Tabbed          EQU     BGUI_TB+961     ; PRIVATE!
  833. STRINGA_ShiftTabbed     EQU     BGUI_TB+962     ; PRIVATE!
  834.  
  835. ** BGUI_TB+963 until BGUI_TB+1040 reserved.
  836. ** BGUI_MB+401 until BGUI_MB+440 reserved.
  837.  
  838. ******************************************************************************
  839. **
  840. **      RESERVED.
  841. **
  842. ** BGUI_TB+1041 until BGUI_TB+1120 reserved.
  843. ** BGUI_MB+441 until BGUI_MB+480 reserved.
  844.  
  845. ******************************************************************************
  846. **
  847. **      "pageclass" - BOOPSI paging gadget.
  848. **
  849. **      Gadget to handle pages of gadgets.
  850. **
  851. PAGE_Active             EQU     BGUI_TB+1121    ; ISGNU
  852. PAGE_Member             EQU     BGUI_TB+1122    ; I----
  853.  
  854. ** BGUI_TB+1123 until BGUI_TB+1200 reserved.
  855. ** BGUI_MB+481 until BGUI_MB+520 reserved.
  856.  
  857. ******************************************************************************
  858. **
  859. **      "mxclass" - BOOPSI mx gadget.
  860. **
  861. **      GadTools style mx gadget.
  862. **
  863. MX_Labels               EQU     BGUI_TB+1201    ; I----
  864. MX_Active               EQU     BGUI_TB+1202    ; ISGNU
  865. MX_LabelPlace           EQU     BGUI_TB+1203    ; I----
  866. MX_DisableButton        EQU     BGUI_TB+1204    ; IS--U
  867. MX_EnableButton         EQU     BGUI_TB+1205    ; IS--U
  868.  
  869. ** BGUI_TB+1206 until BGUI_TB+1280 reserved.
  870. ** BGUI_MB+521 until BGUI_MB+560 reserved.
  871.  
  872. ******************************************************************************
  873. **
  874. **      "sliderclass" - BOOPSI slider gadget.
  875. **
  876. **      GadTools style slider gadget.
  877. **
  878. SLIDER_Min              EQU     BGUI_TB+1281    ; I----
  879. SLIDER_Max              EQU     BGUI_TB+1282    ; I----
  880. SLIDER_Level            EQU     BGUI_TB+1283    ; ISGNU
  881. SLIDER_ThinFrame        EQU     BGUI_TB+1284    ; I----
  882. SLIDER_XenFrame         EQU     BGUI_TB+1285    ; I----
  883.  
  884. ** BGUI_TB+1286 until BGUI_TB+1360 reserved.
  885. ** BGUI_MB+561 until BGUI_MB+600 reserved.
  886.  
  887. ******************************************************************************
  888. **
  889. **      "indicatorclass" - BOOPSI indicator gadget.
  890. **
  891. **      Textual level indicator gadget.
  892. **
  893. INDIC_Min               EQU     BGUI_TB+1361    ; I----
  894. INDIC_Max               EQU     BGUI_TB+1362    ; I----
  895. INDIC_Level             EQU     BGUI_TB+1363    ; IS--U
  896. INDIC_FormatString      EQU     BGUI_TB+1364    ; I----
  897. INDIC_Justification     EQU     BGUI_TB+1365    ; I----
  898.  
  899. ** Justification **
  900. IDJ_LEFT                EQU     0
  901. IDJ_CENTER              EQU     1
  902. IDJ_RIGHT               EQU     2
  903.  
  904. ** BGUI_TB+1366 until BGUI_TB+1440 reserved.
  905.  
  906. ******************************************************************************
  907. **
  908. **      "externalclass" - BGUI external class interface.
  909. **
  910. EXT_Class               EQU     BGUI_TB+1441    ; I----
  911. EXT_ClassID             EQU     BGUI_TB+1442    ; I----
  912. EXT_MinWidth            EQU     BGUI_TB+1443    ; I----
  913. EXT_MinHeight           EQU     BGUI_TB+1444    ; I----
  914. EXT_TrackAttr           EQU     BGUI_TB+1445    ; I----
  915. EXT_Object              EQU     BGUI_TB+1446    ; --G--
  916. EXT_NoRebuild           EQU     BGUI_TB+1447    ; I----
  917.  
  918. ** BGUI_TB+1448 until BGUI_TB+1500 reserved.
  919.  
  920. *****************************************************************************
  921. **
  922. **      "seperatorclass" - BOOPSI seperator class.
  923. **
  924. SEP_Horiz               EQU     BGUI_TB+1501    * I----
  925. SEP_Title               EQU     BGUI_TB+1502    * I----
  926. SEP_Thin                EQU     BGUI_TB+1503    * I----
  927. SEP_Highlight           EQU     BGUI_TB+1504    * I----
  928. SEP_CenterTitle         EQU     BGUI_TB+1505    * I----
  929.  
  930. * BGUI_TB+1506 through BGUI_TB+1760 reserved.
  931.  
  932. ******************************************************************************
  933. **
  934. **      "windowclass" - BOOPSI window class.
  935. **
  936. **      This class creates and maintains an intuition window.
  937. **
  938. WINDOW_Position         EQU     BGUI_TB+1761    ; I----
  939. WINDOW_ScaleWidth       EQU     BGUI_TB+1762    ; I----
  940. WINDOW_ScaleHeight      EQU     BGUI_TB+1763    ; I----
  941. WINDOW_LockWidth        EQU     BGUI_TB+1764    ; I----
  942. WINDOW_LockHeight       EQU     BGUI_TB+1765    ; I----
  943. WINDOW_PosRelBox        EQU     BGUI_TB+1766    ; I----
  944. WINDOW_Bounds           EQU     BGUI_TB+1767    ; ISG--
  945. ** BGUI_TB+1768 until BGUI_TB+1770 reserved.
  946. WINDOW_DragBar          EQU     BGUI_TB+1771    ; I----
  947. WINDOW_SizeGadget       EQU     BGUI_TB+1772    ; I----
  948. WINDOW_CloseGadget      EQU     BGUI_TB+1773    ; I----
  949. WINDOW_DepthGadget      EQU     BGUI_TB+1774    ; I----
  950. WINDOW_SizeBottom       EQU     BGUI_TB+1775    ; I----
  951. WINDOW_SizeRight        EQU     BGUI_TB+1776    ; I----
  952. WINDOW_Activate         EQU     BGUI_TB+1777    ; I----
  953. WINDOW_RMBTrap          EQU     BGUI_TB+1778    ; I----
  954. WINDOW_SmartRefresh     EQU     BGUI_TB+1779    ; I----
  955. WINDOW_ReportMouse      EQU     BGUI_TB+1780    ; I----
  956. ** BGUI_TB+1781 until BGUI_TB+1790 reserved.
  957. WINDOW_IDCMP            EQU     BGUI_TB+1791    ; I----
  958. WINDOW_SharedPort       EQU     BGUI_TB+1792    ; I----
  959. WINDOW_Title            EQU     BGUI_TB+1793    ; IS--U
  960. WINDOW_ScreenTitle      EQU     BGUI_TB+1794    ; IS--U
  961. WINDOW_MenuStrip        EQU     BGUI_TB+1795    ; I-G--
  962. WINDOW_MasterGroup      EQU     BGUI_TB+1796    ; I----
  963. WINDOW_Screen           EQU     BGUI_TB+1797    ; I----
  964. WINDOW_PubScreenName    EQU     BGUI_TB+1798    ; I----
  965. WINDOW_UserPort         EQU     BGUI_TB+1799    ; --G--
  966. WINDOW_SigMask          EQU     BGUI_TB+1800    ; --G--
  967. WINDOW_IDCMPHook        EQU     BGUI_TB+1801    ; I----
  968. WINDOW_VerifyHook       EQU     BGUI_TB+1802    ; I----
  969. WINDOW_IDCMPHookBits    EQU     BGUI_TB+1803    ; I----
  970. WINDOW_VerifyHookBits   EQU     BGUI_TB+1804    ; I----
  971. WINDOW_Font             EQU     BGUI_TB+1805    ; I----
  972. WINDOW_FallBackFont     EQU     BGUI_TB+1806    ; I----
  973. WINDOW_HelpFile         EQU     BGUI_TB+1807    ; IS---
  974. WINDOW_HelpNode         EQU     BGUI_TB+1808    ; IS---
  975. WINDOW_HelpLine         EQU     BGUI_TB+1809    ; IS---
  976. WINDOW_AppWindow        EQU     BGUI_TB+1810    ; I----
  977. WINDOW_AppMask          EQU     BGUI_TB+1811    ; --G--
  978. WINDOW_UniqueID         EQU     BGUI_TB+1812    ; I----
  979. WINDOW_Window           EQU     BGUI_TB+1813    ; --G--
  980. WINDOW_HelpText         EQU     BGUI_TB+1814
  981.  
  982. ** BGUI_TB+1815 until BGUI_TB+1860 reserved.
  983.  
  984. ** Possible window positions. **
  985. POS_CENTERSCREEN        EQU     0       ; Center on the screen
  986. POS_CENTERMOUSE         EQU     1       ; Center under the mouse
  987. POS_TOPLEFT             EQU     2       ; Top-left of the screen
  988.  
  989. ** New methods **
  990.  
  991. WM_OPEN         EQU     BGUI_MB+601     ; Open the window
  992. WM_CLOSE        EQU     BGUI_MB+602     ; Close the window
  993. WM_SLEEP        EQU     BGUI_MB+603     ; Put the window to sleep
  994. WM_WAKEUP       EQU     BGUI_MB+604     ; Wake the window up
  995. WM_HANDLEIDCMP  EQU     BGUI_MB+605     ; Call the IDCMP handler
  996.  
  997. ** Pre-defined WM_HANDLEIDCMP return codes. **
  998. WMHI_CLOSEWINDOW        EQU     $00010000       ; The close gadget was clicked
  999. WMHI_NOMORE             EQU     $00020000       ; No more messages
  1000. WMHI_INACTIVE           EQU     $00030000       ; The window was de-activated
  1001. WMHI_ACTIVE             EQU     $00040000       ; The window was activated
  1002. WMHI_IGNORE             EQU     $FFFFFFFF       ; Like it say's: ignore
  1003.  
  1004. WM_GADGETKEY            EQU     BGUI_MB+606
  1005.  
  1006. ** Add a hotkey to a gadget. **
  1007.    STRUCTURE    wmGadgetKey,MethodID_SIZEOF        ; WM_GADGETKEY
  1008.         APTR    wmgk_Requester                  ; When used in a requester
  1009.         APTR    wmgk_Object                     ; Object to activate
  1010.         APTR    wmgk_Key                        ; Key that triggers activ.
  1011.    LABEL        wmGadgetKey_SIZEOF
  1012.  
  1013. WM_KEYACTIVE            EQU     BGUI_MB+607
  1014. WM_KEYINPUT             EQU     BGUI_MB+608
  1015.  
  1016. ** Send with the WM_KEYACTIVE and WM_KEYINPUT methods. **
  1017.    STRUCTURE    wmKeyInput,MethodID_SIZEOF ; WM_KEYACTIVE/WM_KEYINPUT
  1018.         APTR    wmki_GInfo              ; GadgetInfo
  1019.         APTR    wmki_IEvent             ; Input event
  1020.         ULONG   wmki_ID                 ; Storage for the object ID
  1021.         APTR    wmki_Key                ; Key that triggered activation.
  1022.    LABEL        wmKeyInput_SIZEOF
  1023.  
  1024. ** Possible WM_KEYACTIVE and WM_KEYINPUT return codes. **
  1025. WMKF_MEACTIVE           EQU     0       ; Object went active.
  1026. WMKF_CANCEL             EQU     $0001   ; Key activation canceled.
  1027. WMKF_VERIFY             EQU     $0002   ; Key activation confirmed
  1028. WMKF_ACTIVATE           EQU     $0004   ; ActivateGadget() object
  1029.  
  1030. WM_KEYINACTIVE          EQU     BGUI_MB+609
  1031.  
  1032. ** De-activate a key session. **
  1033.    STRUCTURE    wmKeyInActive,MethodID_SIZEOF      ; WM_KEYINACTIVE
  1034.         APTR    wmkia_GInfo                     ; GadgetInfo
  1035.    LABEL        wmKeyInActive_SIZEOF
  1036.  
  1037. WM_DISABLEMENU          EQU     BGUI_MB+610
  1038. WM_CHECKITEM            EQU     BGUI_MB+611
  1039.  
  1040. ** Disable/Enable a menu or Set/Clear a checkit item. **
  1041.    STRUCTURE    wmMenuAction,MethodID_SIZEOF       ; WM_DISABLEMENU/WM_CHECKITEM
  1042.         ULONG   wmma_MenuID                     ; Menu it's ID
  1043.         ULONG   wmma_Set                        ; TRUE = set, FALSE = clear
  1044.    LABEL        wmMenuAction_SIZEOF
  1045.  
  1046. WM_MENUDISABLED         EQU     BGUI_MB+612
  1047. WM_ITEMCHECKED          EQU     BGUI_MB+613
  1048.  
  1049.    STRUCTURE    wmMenuQuery,MethodID_SIZEOF        ; WM_MENUDISABLED/WM_ITEMCHECKED
  1050.         ULONG   wmmq_MenuID                     ; Menu it's ID
  1051.    LABEL        wmMenuQuery_SIZEOF
  1052.  
  1053. WM_TABCYCLE_ORDER       EQU     BGUI_MB+614
  1054.  
  1055. ** Set the tab-cycling order. **
  1056.    STRUCTURE    wmTabCycleOrder,MethodID_SIZEOF    ; WM_TABCYCLE_ORDER
  1057.         APTR    wtco_Object1
  1058.         ; APTR  wtco_Object2
  1059.         ; ...
  1060.         ; NULL
  1061.    LABEL        wmTabCycleOrder_SIZEOF
  1062.  
  1063. ** Obtain the app message. **
  1064. WM_GETAPPMSG            EQU     BGUI_MB+615
  1065.  
  1066. WM_ADDUPDATE            EQU     BGUI_MB+616
  1067.  
  1068. ** Add object to the update notification list. **
  1069.    STRUCTURE    wmAddUpdate,MethodID_SIZEOF        ; WM_ADDUPDATE
  1070.         ULONG   wmau_SourceID                   ; ID of source object.
  1071.         APTR    wmau_Target                     ; Target object.
  1072.         APTR    wmau_MapList                    ; Attribute map-list.
  1073.    LABEL        wmAddUpdate_SIZEOF
  1074.  
  1075. ** BGUI_MB+617 until BGUI_MB+660 reserved.
  1076.  
  1077. ******************************************************************************
  1078. **
  1079. **      "commodityclass" - BOOPSI commodity class.
  1080. **
  1081. COMM_Name               EQU     BGUI_TB+1861    ; I----
  1082. COMM_Title              EQU     BGUI_TB+1862    ; I----
  1083. COMM_Description        EQU     BGUI_TB+1863    ; I----
  1084. COMM_Unique             EQU     BGUI_TB+1864    ; I----
  1085. COMM_Notify             EQU     BGUI_TB+1865    ; I----
  1086. COMM_ShowHide           EQU     BGUI_TB+1866    ; I----
  1087. COMM_Priority           EQU     BGUI_TB+1867    ; I----
  1088. COMM_SigMask            EQU     BGUI_TB+1868    ; --G--
  1089. COMM_ErrorCode          EQU     BGUI_TB+1869    ; --G--
  1090.  
  1091. ** BGUI_TB+1870 until BGUI_TB+1940 reserved.
  1092.  
  1093. ** New Methods. **
  1094.  
  1095. CM_ADDHOTKEY            EQU     BGUI_MB+661
  1096.  
  1097. ** Add a hot-key to the broker. **
  1098.    STRUCTURE    cmAddHotkey,MethodID_SIZEOF        ; CM_ADDHOTKEY
  1099.         APTR    cah_InputDescription            ; Key input description.
  1100.         ULONG   cah_KeyID                       ; Key command ID.
  1101.         ULONG   cah_Flags                       ; See below.
  1102.    LABEL        cmAddHotkey_SIZEOF
  1103.  
  1104. ** Flags. **
  1105. CAHF_DISABLED   EQU     $0001   ; The key is added but won't work.
  1106.  
  1107. CM_REMHOTKEY            EQU     BGUI_MB+662     ; Remove a key.
  1108. CM_DISABLEHOTKEY        EQU     BGUI_MB+663     ; Disable a key.
  1109. CM_ENABLEHOTKEY         EQU     BGUI_MB+664     ; Enable a key.
  1110.  
  1111. ** Do a key command. **
  1112.    STRUCTURE    cmDoKeyCommand,MethodID_SIZEOF     ; See above.
  1113.         ULONG   cdkc_KeyID                      ; ID of the key.
  1114.    LABEL        cmDoKeyCommand_SIZEOF
  1115.  
  1116. CM_ENABLEBROKER         EQU     BGUI_MB+665     ; Enable broker.
  1117. CM_DISABLEBROKER        EQU     BGUI_MB+666     ; Disable broker.
  1118.  
  1119. CM_MSGINFO              EQU     BGUI_MB+667
  1120.  
  1121. ** Obtain info from a CxMsg. **
  1122.    STRUCTURE    cmMsgInfo,MethodID_SIZEOF  ; CM_MSGINFO
  1123.         ULONG   cmi_InfoType            ; Storage for CxMsgType() result.
  1124.         ULONG   cmi_InfoID              ; Storage for CxMsgID() result.
  1125.         ULONG   cmi_InfoData            ; Storage for CxMsgData() result.
  1126.    LABEL        cmMsgInfo_SIZEOF
  1127.  
  1128. ** Possible CM_MSGINFO return codes. **
  1129. CMMI_NOMORE     EQU     $FFFFFFFF       ; No more messages.
  1130.  
  1131. ** BGUI_MB+668 until BGUI_MB+700 reserved.
  1132.  
  1133. **
  1134. **      CM_ADDHOTKEY error codes obtainable using
  1135. **      the COMM_ErrorCode attribute.
  1136. **
  1137. CMERR_OK                EQU     0       ; OK. No problems.
  1138. CMERR_NO_MEMORY         EQU     1       ; Out of memory.
  1139. CMERR_KEYID_IN_USE      EQU     2       ; Key ID already used.
  1140. CMERR_KEY_CREATION      EQU     3       ; Key creation failure.
  1141. CMERR_CXOBJERROR        EQU     4       ; CxObjError() reported failure.
  1142.  
  1143. ******************************************************************************
  1144. **
  1145. **      "filereqclass.c" - BOOPSI Asl filerequester class.
  1146. **
  1147. FRQ_Drawer              EQU     BGUI_TB+1941    ; --G--
  1148. FRQ_File                EQU     BGUI_TB+1942    ; --G--
  1149. FRQ_Pattern             EQU     BGUI_TB+1943    ; --G--
  1150. FRQ_Path                EQU     BGUI_TB+1944    ; --G--
  1151. FRQ_Left                EQU     BGUI_TB+1945    ; --G--
  1152. FRQ_Top                 EQU     BGUI_TB+1946    ; --G--
  1153. FRQ_Width               EQU     BGUI_TB+1947    ; --G--
  1154. FRQ_Height              EQU     BGUI_TB+1948    ; --G--
  1155. **
  1156. **      In addition to the above defined attributes are all
  1157. **      ASL filerequester attributes ISG-U.
  1158. **
  1159.  
  1160. ** BGUI_TB+1949 until BGUI_TB+2020 reserved.
  1161.  
  1162. **
  1163. **      Error codes which the SetAttrs() and DoMethod()
  1164. **      call's can return.
  1165. **
  1166. FRQ_OK                  EQU     0       ; OK. No problems.
  1167. FRQ_CANCEL              EQU     1       ; The requester was cancelled.
  1168. FRQ_ERROR_NO_MEM        EQU     2       ; Out of memory.
  1169. FRQ_ERROR_NO_FREQ       EQU     3       ; Unable to allocate a requester.
  1170.  
  1171. ** New Methods **
  1172.  
  1173. FRM_DOREQUEST           EQU     BGUI_MB+701     ; Show Requester.
  1174.  
  1175. ** BGUI_MB+702 until BGUI_MB+740 reserved.
  1176.  
  1177.         ENDC    ; LIBRARIES_BGUI_I
  1178.